Bignum get160(char **data, int *datalen);
extern "C" Bignum getmp(char **data, int *datalen);
extern "C" int bignum_bitcount(Bignum bn);
extern "C" void *dh_setup_gex(Bignum pval, Bignum gval);
extern "C" Bignum bigmod(Bignum a, Bignum b);
extern "C" void *dh_setup_group(const struct ssh_kex *kex);
extern "C" void dh_init(struct dh_ctx *ctx);
extern "C" extern "C" Bignum bignum_from_bytes(const unsigned char *data, int nbytes);
extern "C" Bignum modpow(Bignum base_in, Bignum exp, Bignum mod);
extern "C" int bignum_byte(Bignum bn, int i);
extern "C" void freebn(Bignum b);
extern "C" void dh_cleanup(void *handle);
extern "C" Bignum dh_find_K(void *handle, Bignum f);
extern "C" Bignum dh_create_e(void *handle, int nbits);
extern "C" Bignum copybn(Bignum orig);
extern "C" void bignum_set_bit(Bignum bn, int bitnum, int value);
extern "C" extern Bignum Zero, One;
extern "C" int bignum_cmp(Bignum a, Bignum b);
extern "C" Bignum modinv(Bignum number, Bignum modulus);
extern "C" Bignum bigmuladd(Bignum a, Bignum b, Bignum addend);
extern "C" Bignum modmul(Bignum p, Bignum q, Bignum mod);
extern "C" int ssh1_bignum_length(Bignum bn);
extern "C" Bignum bigmul(Bignum a, Bignum b);
extern "C" void decbn(Bignum bn);
extern "C" int ssh1_write_bignum(void *data, Bignum bn);
extern "C" int ssh2_bignum_length(Bignum bn);
extern "C" int ssh1_read_bignum(const unsigned char *data, int len, Bignum * result);
extern "C" Bignum bignum_rshift(Bignum a, int shift);
extern "C" Bignum bignum_bitmask(Bignum n);
extern "C" Bignum bn_power_2(int n);

